home *** CD-ROM | disk | FTP | other *** search
Wrap
1000 ' CATLOG.DEF GENERATOR 1050 ' SAVE "DEFGEN7.BAS",A 1100 ' Author -- Tomoya Andoh (PED00201@niftyserve.or.jp JINX) 1150 ' 1200 ' Ver. 0-1 --- Date 17 Jan.1993 1250 ' Ver. 0-2 --- Date 29 Jan.1993 1300 ' Ver. 0-3 --- Date 1 Feb.1993 1350 ' Ver. 0-4 --- Date 14 Feb.1993 1400 ' Ver. 0-5 --- Date 19 Feb.1993 1450 ' Ver. 0-5a --- Date 21 Feb.1993 1500 ' Ver. 0-5b --- Date 24 Feb.1993 1550 ' Ver. 0-6 --- Date 8 Mar.1993 1600 ' Ver. 0-6a --- Date 10 Aug.1993 1650 ' Ver. 0-6b --- Date 7 Dec.1993 1700 ' Ver. 0-6c --- Date 9 Dec.1993 1750 ' Ver. 0-7 --- Date 30 Jan.1994 CATLOG v1.0n 対応 1800 ' 1850 ' 1900 ' 1950 ON ERROR GOTO *エラーやで 2000 DEFINT A-Z 2050 DIM CMD$(100),MES$(100),DF$(100),MOT$(200),Y_N_FLAG(100),CMD_W$(100),JUN(100),TRG(10) 2100 VER$="v0.7 " : VER_CL$="v1.0n" 2150 SCREEN@ 2 2200 WIDTH 0,25 2250 WINDOW 2300 PALETTE 2350 CONSOLE 2,21,2 2400 GOSUB *パレット設定 2450 COLOR 7,%200,,0 2500 CLS 2550 GOSUB *開始画面設定 2600 GOSUB *パラメタリード 2650 GOSUB *コマンドリストREAD 2700 GOSUB *QUICK_SORT 2750 GOSUB *元DEFファイル読み込み 2800 GOSUB *強制サポートセット 2850 ' FOR I=0 TO 50:PRINT USING "###:@";I,DF$(I),:NEXT I:A$=INPUT$(1) 2900 ' 2950 '文字定数定義 3000 TB$=CHR$(&H09) 3050 'マウス設定_0 3100 MOUSE 0 3150 MOUSE 4,5*8-2,1*19,75*8+2,24*19 3200 ON MOUSE(2) GOSUB *左クリック_0 3250 MOUSE(2) ON 3300 *LOOP_0 3350 LOCATE 18,22 : PRINT "マウス 左クリックで次にすすみます"; 3400 WAIT 36 3450 LOCATE 18,22 : PRINT " "; 3500 WAIT 12 3550 GOTO *LOOP_0 3600 *次頁 3650 'マウス設定_1 3700 ON MOUSE(2) GOSUB *左クリック 3750 ON MOUSE(4) GOSUB *右クリック 3800 MOUSE 1,10,10,1 3850 GOSUB *設定画面表示 3900 MOUSE(2) ON 3950 MOUSE(4) ON 4000 *LOOP : GOTO *LOOP 4050 *終了処理 4100 MOUSE 5 4150 IF R_CODE THEN 4200 GOSUB *更新処理 4250 ELSE 4300 GOSUB *中断処理 4350 ENDIF 4400 PALETTE 4450 PLAY OFF 4500 CONSOLE 0,25,0 4550 COLOR 7,0,7,0 4600 CLS 4650 SYSTEM 4700 END 4750 *左クリック 4800 MOUSE(2) OFF 4850 SX=MOUSE(0) : SY=MOUSE(1) 4900 WX=SX \ 8 : WY=SY \ 19 4950 PLAY "N"+STR$(WY+48) 5000 ' LOCATE 45,20 : PRINT USING "SX=#### SY=#### WX=#### WY=####";SX,SY,WX,WY 5050 IF PAGE>=101 THEN *左クリック_101 5100 'Y=1 終了処理 & HELP 5150 IF SY>=19 AND SY<=36 THEN 5200 IF SX>=502 AND SX<600 THEN R_CODE=-1 : RETURN *終了処理 5250 IF SX>=358 AND SX<=464 THEN R_CODE=0 : RETURN *終了処理 5300 IF SX>=38 AND SX<=112 THEN PAGE=101 : GOSUB *HELP0 5350 ENDIF 5400 IF PAGE=3 THEN *左クリック_2 5450 IF PAGE=4 THEN *左クリック_3 5500 IF PAGE=101 THEN *左クリック_101 5550 'Y=3 入力 5600 IF SY>=57 AND SY<=74 THEN J=100 : GOSUB *キー入力 5650 'Y=4 出力 5700 IF SY>=76 AND SY<=93 THEN J=1 : GOSUB *キー入力 5750 'Y=5 TMP 5800 IF SY>=95 AND SY<=112 THEN 5850 J=3 5900 IF SX>=70 THEN GOSUB *キー入力 5950 IF SX<=64 THEN GOSUB *ON_OFF 6000 ENDIF 6050 'Y=6 インデックスのパス 6100 IF SY>=114 AND SY<=131 THEN 6150 J=62 6200 IF SX>=70 THEN GOSUB *キー入力 6250 IF SX<=64 THEN GOSUB *ON_OFF 6300 ENDIF 6350 'Y=7 読み飛ばす入力ディレクトリTMP 6400 IF SY>=133 AND SY<=150 THEN 6450 J=51 6500 IF SX>=70 THEN GOSUB *キー入力 6550 IF SX<=64 THEN GOSUB *ON_OFF 6600 ENDIF 6650 'Y=8 DL出力ドライブ・ディレクトリ 6700 IF SY>=152 AND SY<=169 THEN 6750 J=42 6800 IF SX>=70 THEN GOSUB *キー入力 6850 IF SX<=64 THEN GOSUB *ON_OFF 6900 ENDIF 6950 'Y=11 検索 7000 IF SY>=209 AND SY<=226 THEN 7050 J=16 7100 IF SX>=70 THEN GOSUB *キー入力 7150 IF SX<=64 THEN GOSUB *ON_OFF 7200 ENDIF 7250 'Y=12 No検索 7300 IF SY>=228 AND SY<=245 THEN 7350 J=15 7400 IF SX>=70 THEN GOSUB *キー入力 7450 IF SX<=64 THEN GOSUB *ON_OFF 7500 ENDIF 7550 'Y=14 メッセージ出力 7600 IF SY>=266 AND SY<=283 THEN 7650 J=0 7700 IF SX>=70 THEN GOSUB *キー入力 7750 IF SX<=64 THEN GOSUB *ON_OFF 7800 ENDIF 7850 'Y=16 TMPO-SIZE 7900 IF SY>=304 AND SY<=321 THEN 7950 J=17 8000 IF SX>=70 THEN GOSUB *キー入力 8050 IF SX<=64 THEN GOSUB *ON_OFF 8100 ENDIF 8150 'Y=17 MOJI-SIZE 8200 IF SY>=323 AND SY<=340 THEN 8250 J=36 8300 IF SX>=70 THEN GOSUB *キー入力 8350 IF SX<=64 THEN GOSUB *ON_OFF 8400 ENDIF 8450 'Y=19 インデックスモード 8500 IF SY>=361 AND SY<=378 THEN 8550 J=2 8600 IF DF$(2)=":2" AND SX>=190 AND SX<=288 THEN 8650 DF$(2)=":1" : GOSUB *SW2 8700 ENDIF 8750 IF DF$(2)=":1" AND SX>=294 AND SX<=392 THEN 8800 DF$(2)=":2" : GOSUB *SW2 8850 ENDIF 8900 ENDIF 8950 'Y=21 メールの扱い 9000 IF SY>=399 AND SY<=416 THEN 9050 J=4 9100 IF Y_N_FLAG(J)=0 AND SX>=294 AND SX<=328 THEN GOSUB *オプション選択 9150 IF Y_N_FLAG(J)=1 AND SX>=334 AND SX<=384 THEN GOSUB *オプション選択 9200 ENDIF 9250 'Y=20 新ファイル作成条件 9300 IF SY>=380 AND SY<=397 THEN 9350 IF SX>=214 AND SX<=320 THEN J=37 : GOSUB *オプション選択 9400 IF SX>=334 AND SX<=480 THEN J=38 : GOSUB *オプション選択 9450 IF SX>=494 AND SX<=608 THEN J=50 : GOSUB *オプション選択 9500 ENDIF 9550 'Y=22 次頁 9600 IF SY>=418 AND SY<=435 THEN 9650 IF SX>=566 THEN PAGE=3 : GOSUB *設定画面2 9700 ENDIF 9750 MOUSE(2) ON 9800 RETURN 9850 *トリガーチェック 9900 FOR I=0 TO 5 9950 IF TRG(I)<>TRG0 AND Y_N_FLAG(TRG(I))=1 AND Y_N_FLAG(TRG0)=0 THEN 10000 J=TRG(I) : WY=3+I 10050 IF I<=1 THEN GOSUB *オプション選択 ELSE GOSUB *ON_OFF 10100 ENDIF 10150 NEXT I 10200 J=TRG0 10250 RETURN 10300 *左クリック_2 10350 'Y=3 中断 & 続行 10400 IF SY>=57 AND SY<=74 THEN 10450 IF Y_N_FLAG(7)=1 AND Y_N_FLAG(8)=0 THEN 10500 J=7 : WY=16 : GOSUB *オプション選択 10550 ENDIF 10600 TRG0=8 : GOSUB *トリガーチェック 10650 J=TRG0 : WY=3 : GOSUB *オプション選択 10700 ENDIF 10750 'Y=4 CATLOGで整理したファイルからインデックスを作る 10800 IF SY>=76 AND SY<=93 THEN 10850 TRG0=44 : GOSUB *トリガーチェック 10900 J=TRG0 : WY=4 : GOSUB *オプション選択 10950 ENDIF 11000 'Y=5 データライブラリをひとつのファイルにまとめる 11050 IF SY>=95 AND SY<=112 THEN 11100 J=53 11150 IF SX<=64 THEN 11200 TRG0=J : GOSUB *トリガーチェック 11250 WY=5 : GOSUB *ON_OFF 11300 ENDIF 11350 IF SX>=70 THEN GOSUB *キー入力 11400 ENDIF 11450 'Y=6 ファイルと会議室対応ファイル作成 11500 IF SY>=114 AND SY<=131 THEN 11550 J=43 11600 IF SX<=64 THEN 11650 TRG0=J : GOSUB *トリガーチェック 11700 WY=6 : GOSUB *ON_OFF 11750 ENDIF 11800 IF SX>=70 THEN GOSUB *キー入力 11850 ENDIF 11900 'Y=7 整理済ログからID収集 11950 IF SY>=133 AND SY<=150 THEN 12000 J=46 12050 IF SX<=64 THEN 12100 TRG0=J : GOSUB *トリガーチェック 12150 WY=7 : GOSUB *ON_OFF 12200 ENDIF 12250 IF SX>=70 THEN GOSUB *キー入力 12300 ENDIF 12350 'Y=8 CATLOG生成ファイルからインデックス作成,ID/ハンドル対応ファイル作成 12400 IF SY>=152 AND SY<=169 THEN 12450 J=45 12500 IF SX<=64 THEN 12550 TRG0=J : GOSUB *トリガーチェック 12600 WY=8 : GOSUB *ON_OFF 12650 ENDIF 12700 IF SX>=70 THEN GOSUB *キー入力 12750 ENDIF 12800 'Y=11 ログを解凍しながら実行,凍結しながら実行 12850 IF SY>=209 AND SY<=226 THEN 12900 IF SX>=38 AND SX<=296 THEN J=32 : GOSUB *オプション選択 12950 IF SX>=310 AND SX<=600 THEN J=33 : GOSUB *オプション選択 13000 ENDIF 13050 'Y=12 ***log整理を入れない,削除した発言は削除 13100 IF SY>=228 AND SY<=245 THEN 13150 IF SX>=38 AND SX<=296 THEN J=39 : GOSUB *オプション選択 13200 IF SX>=310 AND SX<=600 THEN J=29 : GOSUB *オプション選択 13250 ENDIF 13300 'Y=13 HP,会議室,LIBは整理しない 13350 IF SY>=247 AND SY<=264 THEN 13400 IF SX>=38 AND SX<=216 THEN J=20 : GOSUB *オプション選択 13450 IF SX>=230 AND SX<=408 THEN J=22 : GOSUB *オプション選択 13500 IF SX>=422 AND SX<=600 THEN J=24 : GOSUB *オプション選択 13550 ENDIF 13600 'Y=14 PATIO,MAIL,BILLは整理しない 13650 IF SY>=266 AND SY<=283 THEN 13700 IF SX>=38 AND SX<=216 THEN J=21 : GOSUB *オプション選択 13750 IF SX>=230 AND SX<=408 THEN J=23 : GOSUB *オプション選択 13800 IF SX>=422 AND SX<=600 THEN J=25 : GOSUB *オプション選択 13850 ENDIF 13900 'Y=16 処理を途中で中断する 13950 IF SY>=304 AND SY<=321 THEN 14000 IF SX>=38 AND SX<=312 THEN 14050 IF Y_N_FLAG(7)=0 AND Y_N_FLAG(8)=1 THEN 14100 J=8 : WY=3 : GOSUB *オプション選択 14150 ENDIF 14200 J=7 : WY=16 : GOSUB *オプション選択 14250 ENDIF 14300 ENDIF 14350 'Y=17 Re-sort 14400 IF SY>=323 AND SY<=340 THEN 14450 IF SX>=38 AND SX<=312 THEN J=48 : GOSUB *オプション選択 14500 ENDIF 14550 'Y=18 ログ表示しながら実行 14600 IF SY>=342 AND SY<=359 THEN 14650 IF SX>=38 AND SX<=312 THEN J=31 : GOSUB *オプション選択 14700 ENDIF 14750 'Y=22 前頁,次頁 14800 IF SY>=418 AND SY<=435 THEN 14850 IF SX>=526 AND SX<=560 THEN 14900 PAGE=2 14950 GOSUB *設定画面1 15000 ENDIF 15050 IF SX>=566 THEN 15100 PAGE=4 15150 GOSUB *設定画面3 15200 ENDIF 15250 ENDIF 15300 MOUSE(2) ON 15350 RETURN 15400 *左クリック_3 15450 'Y=3 All_Yes,All_No & All引用 15500 IF SY>=57 AND SY<=74 THEN 15550 IF SX>=38 AND SX<=224 THEN 15600 IF Y_N_FLAG(9)=0 AND Y_N_FLAG(10)=1 THEN 15650 J=10 : GOSUB *オプション選択 15700 ENDIF 15750 J=9 : GOSUB *オプション選択 15800 ENDIF 15850 IF SX>=238 AND SX<=416 THEN 15900 IF Y_N_FLAG(9)=1 AND Y_N_FLAG(10)=0 THEN 15950 J=9 : GOSUB *オプション選択 16000 ENDIF 16050 J=10 : GOSUB *オプション選択 16100 ENDIF 16150 IF SX>=430 AND SX<=600 THEN J=26 : GOSUB *オプション選択 16200 ENDIF 16250 'Y=4 DON作らない,静かに,だまれ 16300 IF SY>=76 AND SY<=93 THEN 16350 IF SX>=38 AND SX<=216 THEN J=13 : GOSUB *オプション選択 16400 IF SX>=230 AND SX<=408 THEN J=5 : GOSUB *オプション選択 16450 IF SX>=422 AND SX<=600 THEN J=6 : GOSUB *オプション選択 16500 ENDIF 16550 'Y=7 全ファイル検索 16600 IF SY>=133 AND SY<=150 THEN J=14 : GOSUB *オプション選択 16650 'Y=8 サブディレクトリ内無視 16700 IF SY>=152 AND SY<=169 THEN J=30 : GOSUB *オプション選択 16750 'Y=11 yymmdd以降&以前収集 16800 IF SY>=209 AND SY<=226 THEN 16850 IF SX<=64 THEN J=18 : GOSUB *ON_OFF 16900 IF SX>=70 AND SX<=312 THEN J=18 : GOSUB *キー入力 16950 IF SX>=326 AND SX<=352 THEN J=19 : GOSUB *ON_OFF 17000 IF SX>=358 AND SX<=600 THEN J=19 : GOSUB *キー入力 17050 ENDIF 17100 'Y=12 ID収集 17150 IF SY>=228 AND SY<=245 THEN 17200 J=35 17250 IF SX<=64 THEN GOSUB *ON_OFF 17300 IF SX>=70 THEN GOSUB *キー入力 17350 ENDIF 17400 'Y=15 削除から除くファイル名 17450 IF SY>=285 AND SY<=302 THEN 17500 J=28 17550 IF SX<=64 THEN GOSUB *ON_OFF 17600 IF SX>=70 THEN GOSUB *キー入力 17650 ENDIF 17700 'Y=16 今日より古いファイルの削除 17750 IF SY>=304 AND SY<=321 THEN 17800 IF SX>=38 AND SX<=312 THEN J=27 : GOSUB *オプション選択 17850 IF SX>=326 AND SX<=600 THEN J=61 : GOSUB *オプション選択 17900 ENDIF 17950 'Y=17 フォーラムラインを削除,FAPXレスファイルを削除 18000 IF SY>=323 AND SY<=340 THEN 18050 IF SX>=38 AND SX<=312 THEN J=40 : GOSUB *オプション選択 18100 IF SX>=326 AND SX<=600 THEN J=49 : GOSUB *オプション選択 18150 ENDIF 18200 'Y=18 削除した発言の表題を表示 18250 IF SY>=342 AND SY<=359 THEN 18300 IF SX>=38 AND SX<=312 THEN J=41 : GOSUB *オプション選択 18350 ENDIF 18400 'Y=22 前頁 18450 IF SY>=418 AND SY<=435 THEN 18500 IF SX>=566 THEN 18550 PAGE=3 18600 GOSUB *設定画面2 18650 ENDIF 18700 ENDIF 18750 MOUSE(2) ON 18800 RETURN 18850 *左クリック_101 18900 ON MOUSE(4) GOSUB *次頁 18950 MOUSE(4) ON 19000 IF SY>=57 AND SY<=19*(3+((100-C_ST) \ 4))+17 THEN 19050 I=-1 19100 IF SX<=152 THEN I=0 19150 IF SX>=158 AND SX<=312 THEN I=1 19200 IF SX>=318 AND SX<=472 THEN I=2 19250 IF SX>=480 THEN I=3 19300 IF I<>-1 THEN 19350 HLP=4*((SY \ 19)-3)+I 19400 GOSUB *HELP1 19450 ENDIF 19500 ENDIF 19550 MOUSE(2) ON 19600 RETURN 19650 *右クリック 19700 R_CODE=0 19750 RETURN *終了処理 19800 *左クリック_0 19850 MOUSE(2) OFF 19900 PAGE=PAGE+1 19950 RETURN *次頁 20000 *オプション選択 20050 GOSUB *設定変更 20100 GOSUB *DISP_COM 20150 RETURN 20200 *ON_OFF 20250 IF Y_N_FLAG(J)=1 THEN Y_N_FLAG(J)=0 ELSE Y_N_FLAG(J)=1 20300 GOSUB *DISP_COM 20350 RETURN 20400 *設定変更 20450 IF DF$(J)="yes" THEN 20500 DF$(J)="no" 20550 Y_N_FLAG(J)=0 20600 ELSE 20650 DF$(J)="yes" 20700 Y_N_FLAG(J)=1 20750 ENDIF 20800 RETURN 20850 *DISP_COM 20900 IF J=100 THEN GOSUB *SW100 : RETURN 20950 IF J>60 THEN 21250 21000 IF J<=30 THEN 21050 ELSE 21150 21050 ON J+1 GOSUB *SW0,*SW1,*SW2,*SW3,*SW4,*SW5,*SW6,*SW7,*SW8,*SW9,*SW10,*SW11,*SW12,*SW13,*SW14,*SW15,*SW16,*SW17,*SW18,*SW19,*SW20,*SW21,*SW22,*SW23,*SW24,*SW25,*SW26,*SW27,*SW28,*SW29,*SW30 21100 RETURN 21150 ON J-30 GOSUB *SW31,*SW32,*SW33,*SW34,*SW35,*SW36,*SW37,*SW38,*SW39,*SW40,*SW41,*SW42,*SW43,*SW44,*SW45,*SW46,*SW47,*SW48,*SW49,*SW50,*SW51,*SW52,*SW53,*SW54,*SW55,*SW56,*SW57,*SW58,*SW59,*SW60 21200 RETURN 21250 ON J-60 GOSUB *SW61,*SW62,*SW63 21300 RETURN 21350 *キー入力 21400 GOSUB *キー入力1 21450 GOSUB *DISP_COM 21500 RETURN 21550 *キー入力1 21600 LOCATE 0,23:PRINT KACNV$(RIGHT$(MES$(J),LEN(MES$(J))-2));" "; 21650 X=0:Y=23:M=79:C=205:GOSUB *ボックス 21700 LINE INPUT DUMMY$ 21750 IF DUMMY$<>"" THEN 21800 DF$(J)=":"+DUMMY$ 21850 ENDIF 21900 RETURN 21950 *設定画面表示 22000 CLS 1 : CLS 3 22050 LOCATE 0,1 : PRINT SPC(78); 22100 LOCATE 63, 1 : PRINT "更新して終了"; 22150 LOCATE 45, 1 : PRINT "更新せずに終了"; 22200 X=63:Y=1:M=12:C=203:GOSUB *ボックス 22250 X=45:Y=1:M=14:C=204:GOSUB *ボックス 22300 LOCATE 5, 1 : : PRINT "HELP!"; 22350 X=5:Y=1:M=10:C=204:GOSUB *ボックス 22400 *設定画面1 22450 CLS 1 : PAGE=2 22500 COLOR 7,%200,,4 22550 LOCATE 2, 2 : PRINT "ドライブ,ディレクトリを指定してください。" 22600 WY=3 : GOSUB *SW100 22650 WY=4 : GOSUB *SW1 22700 WY=5 : GOSUB *SW3 22750 WY=6 : GOSUB *SW62 22800 WY=7 : GOSUB *SW51 22850 WY=8 : GOSUB *SW42 22900 LOCATE 2,10 : PRINT "ファイルを指定してください。(ワイルドカード使用可)" 22950 WY=11 : GOSUB *SW16 23000 WY=12 : GOSUB *SW15 23050 LOCATE 2,13 : PRINT "メッセージ出力先をフルパスで指定してください。" 23100 WY=14 : GOSUB *SW0 23150 LOCATE 2,15 : PRINT "ファイルサイズ指定オプション(1Kバイト単位で指定)" 23200 WY=16 : GOSUB *SW17 23250 WY=17 : GOSUB *SW36 23300 LOCATE 2,18 : PRINT "処理内容を選択してください。" 23350 WY=19 : GOSUB *SW2 23400 WY=20 : GOSUB *SW37 : GOSUB *SW38 : GOSUB *SW50 23450 WY=21 : GOSUB *SW4 23500 LOCATE 71,22 : PRINT "次頁"; 23550 X=71:Y=22:M=4:C=204:GOSUB *ボックス 23600 COLOR 7,%200,,0 23650 RETURN 23700 *設定画面2 23750 CLS 1 : PAGE=3 23800 COLOR 5,%200,,4 23850 LOCATE 2, 2 : PRINT "入力ドライブ指定以外の処理開始スイッチ(ONにできるのは1個だけ)" 23900 COLOR 7,%200,,4 23950 WY=3 : GOSUB *SW8 24000 WY=4 : GOSUB *SW44 24050 WY=5 : GOSUB *SW53 24100 WY=6 : GOSUB *SW43 24150 WY=7 : GOSUB *SW46 24200 WY=8 : GOSUB *SW45 24250 LOCATE 2,10 : PRINT "オプションを選択してください。" 24300 WY=11 : GOSUB *SW32 : GOSUB *SW33 24350 WY=12 : GOSUB *SW39 : GOSUB *SW29 24400 WY=13 : GOSUB *SW20 : GOSUB *SW22 : GOSUB *SW24 24450 WY=14 : GOSUB *SW21 : GOSUB *SW23 : GOSUB *SW25 24500 WY=16 : GOSUB *SW7 24550 WY=17 : GOSUB *SW48 24600 WY=18 : GOSUB *SW31 24650 LOCATE 66,22 : PRINT "前頁"; 24700 X=66:Y=22:M=4:C=204:GOSUB *ボックス 24750 LOCATE 71,22 : PRINT "次頁"; 24800 X=71:Y=22:M=4:C=204:GOSUB *ボックス 24850 COLOR 7,%200,,0 24900 RETURN 24950 *設定画面3 25000 CLS 1 : PAGE=4 25050 LOCATE 2, 2 : PRINT "オプションスイッチ" 25100 WY=3 : GOSUB *SW9 : GOSUB *SW10 : GOSUB *SW26 25150 WY=4 : GOSUB *SW13 : GOSUB *SW5 : GOSUB *SW6 25200 LOCATE 2, 6 : PRINT "検索系オプション" 25250 WY=7 : GOSUB *SW14 25300 WY=8 : GOSUB *SW30 25350 LOCATE 2,10 : PRINT "収集系オプション(日付入力はyy年mm月dd日をyymmddの形式で入力する)" 25400 WY=11 : GOSUB *SW18 : GOSUB *SW19 25450 WY=12 : GOSUB *SW35 25500 LOCATE 2,14 : PRINT "削除系オプション <★DANGER★>" 25550 WY=15 : GOSUB *SW28 25600 WY=16 : GOSUB *SW27 : GOSUB *SW61 25650 WY=17 : GOSUB *SW40 : GOSUB *SW49 25700 WY=18 : GOSUB *SW41 25750 LOCATE 71,22 : PRINT "前頁"; 25800 X=71:Y=22:M=4:C=204:GOSUB *ボックス 25850 COLOR 7,%200,,0 25900 RETURN 25950 *HELP0 26000 ON MOUSE(4) GOSUB *次頁 26050 MOUSE(4) ON 26100 CLS 1 : PAGE=101 26150 LOCATE 0, 1 : PRINT " HELP表示 OPTIONS.DOCを利用しています 右クリックで設定画面に戻ります"; 26200 X=2:Y=1:M=75:C=203:GOSUB *ボックス 26250 LOCATE 5, 2 : PRINT "表示したいスイッチにマウスカーソルを合わせ左クリックしてください" 26300 IF CMD_W$(0)<>"" THEN 26350 C_ST=0 : FLAG=0 26400 ELSE 26450 FLAG=-1 26500 ENDIF 26550 FOR I=0 TO 100 26600 IF FLAG AND CMD_W$(I)<>"" THEN C_ST=I : FLAG=0 26650 IF CMD_W$(I)<>"" THEN 26700 X=20*((I-C_ST) MOD 4):Y=3+((I-C_ST) \ 4) 26750 LOCATE X,Y : PRINT USING "& &";CMD_W$(I); 26800 M=19:C=204:GOSUB *ボックス 26850 ENDIF 26900 NEXT I 26950 RETURN 27000 *HELP1 27050 ON MOUSE(4) GOSUB *HELP0 27100 MOUSE(4) ON 27150 CLS 1 : PAGE=102 27200 LOCATE 0, 1 : PRINT " HELP表示 OPTIONS.DOCを利用しています 右クリックで前画面に戻ります "; 27250 X=2:Y=1:M=75:C=203:GOSUB *ボックス 27300 OPEN ".\OPTIONSJ.DOC" FOR INPUT AS #1 27350 LINE INPUT #1,A$ 27400 LOCATE 1,4:PRINT CMD_W$(HLP+C_ST);MES$(JUN(HLP+C_ST)) 27450 IF LEFT$(A$,1)=";" THEN 27500 A$=RIGHT$(A$,LEN(A$)-1) : P0=INSTR(A$,":") : P1=INSTR(A$,";") 27550 IF P1<>0 AND P1<P0 THEN P0=0 27600 IF P0<>0 THEN 27650 IF LEFT$(A$,P0-1)=CMD_W$(HLP+C_ST) THEN 28200 27700 ELSE 27750 IF P1=0 THEN 27800 IF A$=CMD_W$(HLP+C_ST) THEN 28200 27850 ELSE 27900 IF LEFT$(A$,P1-1)=CMD_W$(HLP+C_ST) THEN 28200 27950 ENDIF 28000 ENDIF 28050 ENDIF 28100 LINE INPUT #1,A$ 28150 GOTO 27450 28200 LOCATE 1,4:PRINT CHR$(&H1B);"[0K";A$ 28250 LINE INPUT #1,A$ 28300 WHILE KLEFT$(A$,1)<>"☆" 28350 LINE INPUT #1,A$ 28400 WEND 28450 WHILE KLEFT$(A$,1)<>"★" 28500 LINE INPUT #1,A$ 28550 IF KLEFT$(A$,1)<>"★" THEN PRINT " ";A$ 28600 WEND 28650 CLOSE #1 28700 BEEP 28750 RETURN 28800 *SW100 28850 X=5:Y=WY:M=70: GOSUB *ボックス_P 28900 LOCATE 5,WY : PRINT "入力ドライブ:ディレクトリ";DF$(100) 28950 C=205:GOSUB *ボックス 29000 RETURN 29050 *SW1 29100 X=5:Y=WY:M=70: GOSUB *ボックス_P 29150 LOCATE 5,WY : PRINT "出力ドライブ:ディレクトリ";DF$(1) 29200 C=205:GOSUB *ボックス 29250 RETURN 29300 *SW3 29350 X=5:Y=WY:M=3: GOSUB *ボックス_P 29400 X=9: M=66: GOSUB *ボックス_P 29450 IF Y_N_FLAG(3)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 29500 LOCATE 5,WY : PRINT DUM$;" 作業ドライブ:ディレクトリ";DF$(3) 29550 X=5: M=3:C=CL: GOSUB *ボックス 29600 X=9: M=66:C=206:GOSUB *ボックス 29650 RETURN 29700 *SW16 29750 X=5:Y=WY:M=3: GOSUB *ボックス_P 29800 X=9: M=66: GOSUB *ボックス_P 29850 IF Y_N_FLAG(16)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 29900 LOCATE 5,WY : PRINT DUM$;" 検索するファイル";DF$(16) 29950 X=5: M=3:C=CL: GOSUB *ボックス 30000 X=9: M=66:C=206:GOSUB *ボックス 30050 RETURN 30100 *SW15 30150 X=5:Y=WY:M=3: GOSUB *ボックス_P 30200 X=9: M=66: GOSUB *ボックス_P 30250 IF Y_N_FLAG(15)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 30300 LOCATE 5,WY : PRINT DUM$;" 検索しないファイル";DF$(15) 30350 X=5: M=3:C=CL: GOSUB *ボックス 30400 X=9: M=66:C=CL: GOSUB *ボックス 30450 RETURN 30500 *SW0 30550 COLOR 6,%200,,4 30600 X=5:Y=WY:M=3: GOSUB *ボックス_P 30650 X=9: M=66: GOSUB *ボックス_P 30700 IF Y_N_FLAG(0)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 30750 LOCATE 5,WY : PRINT DUM$;" メッセージ出力ファイル名";DF$(0) 30800 X=5: M=3:C=CL: GOSUB *ボックス 30850 X=9: M=66:C=206:GOSUB *ボックス 30900 COLOR 7,%200,,4 30950 RETURN 31000 *SW2 31050 X=24:Y=WY:M=12: GOSUB *ボックス_P 31100 X=37: M=12: GOSUB *ボックス_P 31150 COLOR 6,%200,,4 31200 LOCATE 5,WY : PRINT "インデックスモード"; 31250 COLOR 7,%200,,4 31300 PRINT " 全体でひとつ フォーラム毎" 31350 IF DF$(2)=":1" THEN CL=207:CE=202 ELSE CL=202:CE=207 31400 X=24: M=12:C=CL:GOSUB *ボックス 31450 X=37: M=12:C=CE:GOSUB *ボックス 31500 RETURN 31550 *SW4 31600 X=37:Y=WY:M=4: GOSUB *ボックス_P 31650 X=42: M=6: GOSUB *ボックス_P 31700 COLOR 6,%200,,4 31750 LOCATE 5,WY : PRINT "メールはひとつのファイルで処理"; 31800 COLOR 7,%200,,4 31850 PRINT " する しない"; 31900 IF Y_N_FLAG(4)=1 THEN CL=207:CE=202 ELSE CL=202:CE=207 31950 X=37: M=4:C=CL: GOSUB *ボックス 32000 X=42: M=6:C=CE: GOSUB *ボックス 32050 RETURN 32100 *SW37 32150 COLOR 6,%200,,4 32200 LOCATE 5,WY : PRINT "新ファイルを作るのは"; 32250 COLOR 7,%200,,4 32300 X=27:Y=WY:M=13: GOSUB *ボックス_P 32350 LOCATE 28,WY : PRINT "発言番号001"; 32400 IF Y_N_FLAG(37)=1 THEN CL=207 ELSE CL=202 32450 C=CL: GOSUB *ボックス 32500 RETURN 32550 *SW38 32600 X=42:Y=WY:M=18: GOSUB *ボックス_P 32650 LOCATE 42,WY : PRINT "より小さな発言番号"; 32700 IF Y_N_FLAG(38)=1 THEN CE=207 ELSE CE=202 32750 C=CE: GOSUB *ボックス 32800 RETURN 32850 *SW50 32900 X=62:Y=WY:M=13: GOSUB *ボックス_P 32950 LOCATE 63,WY : PRINT "発言番号x01"; 33000 IF Y_N_FLAG(50)=1 THEN CE=207 ELSE CE=202 33050 C=CE: GOSUB *ボックス 33100 RETURN 33150 *SW32 33200 X=5:Y=WY:M=32: GOSUB *ボックス_P 33250 LOCATE 5,WY : PRINT "LHA圧縮ファイルを解凍しながら実行" 33300 IF Y_N_FLAG(32)=1 THEN CL=207 ELSE CL=202 33350 C=CL:GOSUB *ボックス 33400 RETURN 33450 *SW20 33500 X=5:Y=WY:M=22: GOSUB *ボックス_P 33550 LOCATE X,WY : PRINT "HP は 整 理 し な い"; 33600 IF Y_N_FLAG(20)=1 THEN CL=207 ELSE CL=202 33650 C=CL:GOSUB *ボックス 33700 RETURN 33750 *SW21 33800 X=5:Y=WY:M=22: GOSUB *ボックス_P 33850 LOCATE X,WY : PRINT "PATIOは整理しない"; 33900 IF Y_N_FLAG(21)=1 THEN CL=207 ELSE CL=202 33950 C=CL:GOSUB *ボックス 34000 RETURN 34050 *SW22 34100 X=29:Y=WY:M=22: GOSUB *ボックス_P 34150 LOCATE X,WY : PRINT " 会議室は整理しない"; 34200 IF Y_N_FLAG(22)=1 THEN CL=207 ELSE CL=202 34250 C=CL:GOSUB *ボックス 34300 RETURN 34350 *SW23 34400 X=29:Y=WY:M=22: GOSUB *ボックス_P 34450 LOCATE X,WY : PRINT " MAILは整理しない"; 34500 IF Y_N_FLAG(23)=1 THEN CL=207 ELSE CL=202 34550 C=CL:GOSUB *ボックス 34600 RETURN 34650 *SW24 34700 X=53:Y=WY:M=22: GOSUB *ボックス_P 34750 LOCATE X,WY : PRINT " LIBは整理しない"; 34800 IF Y_N_FLAG(24)=1 THEN CL=207 ELSE CL=202 34850 C=CL:GOSUB *ボックス 34900 RETURN 34950 *SW25 35000 X=53:Y=WY:M=22: GOSUB *ボックス_P 35050 LOCATE X,WY : PRINT " BILLは整理しない"; 35100 IF Y_N_FLAG(25)=1 THEN CL=207 ELSE CL=202 35150 C=CL:GOSUB *ボックス 35200 RETURN 35250 *SW39 35300 X=5:Y=WY:M=32: GOSUB *ボックス_P 35350 LOCATE X,WY : PRINT "「*****log整理」を入れない"; 35400 IF Y_N_FLAG(39)=1 THEN CL=207 ELSE CL=202 35450 C=CL:GOSUB *ボックス 35500 RETURN 35550 *SW7 35600 X=5:Y=WY:M=34: GOSUB *ボックス_P 35650 IF Y_N_FLAG(7)=1 THEN CL=207 ELSE CL=202 35700 LOCATE X,WY : PRINT " 処理を第2段階で中断する" 35750 C=CL:GOSUB *ボックス 35800 RETURN 35850 *SW8 35900 X=5:Y=WY:M=70: GOSUB *ボックス_P 35950 IF Y_N_FLAG(8)=1 THEN CE=207 ELSE CE=202 36000 LOCATE X,WY : PRINT " 中 断 し た 処 理 を 続 行 す る" 36050 C=CE:GOSUB *ボックス 36100 RETURN 36150 *SW9 36200 X=5:Y=WY:M=23: GOSUB *ボックス_P 36250 IF Y_N_FLAG(9)=1 THEN CL=207 ELSE CL=202 36300 LOCATE X,WY : PRINT "全ての質問にYESと答える" 36350 C=CL:GOSUB *ボックス 36400 RETURN 36450 *SW10 36500 X=30:Y=WY:M=22: GOSUB *ボックス_P 36550 IF Y_N_FLAG(10)=1 THEN CE=207 ELSE CE=202 36600 LOCATE X,WY : PRINT "全ての質問にNOと答える" 36650 C=CE:GOSUB *ボックス 36700 RETURN 36750 *SW26 36800 X=54:Y=WY:M=21: GOSUB *ボックス_P 36850 IF Y_N_FLAG(26)=1 THEN CL=207 ELSE CL=202 36900 LOCATE X,WY : PRINT "全部引用発言とする" 36950 C=CL:GOSUB *ボックス 37000 RETURN 37050 *SW13 37100 X=5:Y=WY:M=22: GOSUB *ボックス_P 37150 IF Y_N_FLAG(13)=1 THEN CL=207 ELSE CL=202 37200 LOCATE X,WY : PRINT "CATLOG.DONを作らない" 37250 C=CL:GOSUB *ボックス 37300 RETURN 37350 *SW5 37400 X=29:Y=WY:M=22: GOSUB *ボックス_P 37450 IF Y_N_FLAG(5)=1 THEN CE=207 ELSE CE=202 37500 LOCATE X,WY : PRINT "静かに モード" 37550 C=CE:GOSUB *ボックス 37600 RETURN 37650 *SW6 37700 X=53:Y=WY:M=22: GOSUB *ボックス_P 37750 IF Y_N_FLAG(6)=1 THEN CQ=207 ELSE CQ=202 37800 LOCATE X,WY : PRINT "だまれ モード" 37850 C=CQ:GOSUB *ボックス 37900 RETURN 37950 *SW14 38000 X=5:Y=WY:M=70: GOSUB *ボックス_P 38050 IF Y_N_FLAG(14)=1 THEN CL=207 ELSE CL=202 38100 LOCATE X,WY : PRINT "全ファイルを検索対象とする(前頁のオプションより優先します)遅くなるよ(^^;)" 38150 C=CL:GOSUB *ボックス 38200 RETURN 38250 *SW30 38300 X=5:Y=WY:M=70: GOSUB *ボックス_P 38350 IF Y_N_FLAG(30)=1 THEN CL=207 ELSE CL=202 38400 LOCATE X,WY : PRINT "サブ・ディレクトリの検索をおこなわない" 38450 C=CL:GOSUB *ボックス 38500 RETURN 38550 *SW18 38600 X=5:Y=WY:M=3 : GOSUB *ボックス_P 38650 X=9: M=30: GOSUB *ボックス_P 38700 IF Y_N_FLAG(18)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202 38750 LOCATE 5,WY : PRINT USING "& & &&年&&月&&日以降の発言収集";DUM$,MID$(DF$(18),2,2),MID$(DF$(18),4,2),MID$(DF$(18),6,2) 38800 X=5: M=3 :C=CL: GOSUB *ボックス 38850 X=9: M=30: GOSUB *ボックス 38900 RETURN 38950 *SW19 39000 X=41:Y=WY:M=3 : GOSUB *ボックス_P 39050 X=45: M=30: GOSUB *ボックス_P 39100 IF Y_N_FLAG(19)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202 39150 LOCATE 41,WY : PRINT USING "& & &&年&&月&&日以前の発言収集";DUM$,MID$(DF$(19),2,2),MID$(DF$(19),4,2),MID$(DF$(19),6,2) 39200 X=41: M=3 :C=CL:GOSUB *ボックス 39250 X=45: M=30: GOSUB *ボックス 39300 RETURN 39350 *SW35 39400 X=5:Y=WY:M=3 : GOSUB *ボックス_P 39450 X=9: M=66: GOSUB *ボックス_P 39500 IF Y_N_FLAG(35)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202 39550 LOCATE 5,WY : PRINT DUM$;" IDの発言収集(複数指定可)";DF$(35) 39600 X=5: M=3 :C=CL: GOSUB *ボックス 39650 X=9: M=66: GOSUB *ボックス 39700 RETURN 39750 *SW46 39800 X=5:Y=WY:M=3 : GOSUB *ボックス_P 39850 X=9: M=66: GOSUB *ボックス_P 39900 IF Y_N_FLAG(46)=1 THEN DUM$="ON " : CL=207 ELSE DUM$="OFF" : CL=202 39950 LOCATE 5,WY : PRINT DUM$;" 整理済のファイルからIDで発言収集";DF$(46) 40000 X=5: M=3 :C=CL: GOSUB *ボックス 40050 X=9: M=66: GOSUB *ボックス 40100 RETURN 40150 *SW17 40200 X=5:Y=WY:M=3: GOSUB *ボックス_P 40250 X=9: M=66: GOSUB *ボックス_P 40300 IF Y_N_FLAG(17)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 40350 LOCATE 5,WY : PRINT DUM$;" テンポラリファイルサイズ(無指定で10240KB)";DF$(17) 40400 X=5: M=3 :C=CL: GOSUB *ボックス 40450 X=9: M=66: GOSUB *ボックス 40500 RETURN 40550 *SW36 40600 X=5:Y=WY:M=3: GOSUB *ボックス_P 40650 X=9: M=66: GOSUB *ボックス_P 40700 IF Y_N_FLAG(36)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 40750 LOCATE 5,WY : PRINT DUM$;" ひとつのファイルサイズ(無指定で800KB)";DF$(36) 40800 X=5: M=3 :C=CL: GOSUB *ボックス 40850 X=9: M=66: GOSUB *ボックス 40900 RETURN 40950 *SW27 41000 X=5:Y=WY:M=34: GOSUB *ボックス_P 41050 IF Y_N_FLAG(27)=1 THEN CL=207 ELSE CL=202 41100 LOCATE 5,WY : PRINT "今日より古いファイルを削除/危険(~~)" 41150 C=CL:GOSUB *ボックス 41200 RETURN 41250 *SW61 41300 X=41:Y=WY:M=34: GOSUB *ボックス_P 41350 IF Y_N_FLAG(61)=1 THEN CL=207 ELSE CL=202 41400 LOCATE 41,WY : PRINT "今日より古いファイルを強制削除/危険" 41450 C=CL:GOSUB *ボックス 41500 RETURN 41550 *SW40 41600 X=5:Y=WY:M=34: GOSUB *ボックス_P 41650 IF Y_N_FLAG(40)=1 THEN CL=207 ELSE CL=202 41700 LOCATE 5,WY : PRINT "- FFMHOB MES( )の行を削除" 41750 C=CL:GOSUB *ボックス 41800 RETURN 41850 *SW49 41900 X=41:Y=WY:M=34: GOSUB *ボックス_P 41950 IF Y_N_FLAG(49)=1 THEN CL=207 ELSE CL=202 42000 LOCATE 41,WY : PRINT "FAPXのRESファイルを削除" 42050 C=CL:GOSUB *ボックス 42100 RETURN 42150 *SW41 42200 X=5:Y=WY:M=34: GOSUB *ボックス_P 42250 IF Y_N_FLAG(41)=1 THEN CL=207 ELSE CL=202 42300 LOCATE 5,WY : PRINT "削除した発言の表題を表示する" 42350 C=CL:GOSUB *ボックス 42400 RETURN 42450 *SW28 42500 X=5:Y=WY:M=3: GOSUB *ボックス_P 42550 X=9: M=66: GOSUB *ボックス_P 42600 IF Y_N_FLAG(28)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 42650 LOCATE 5,WY : PRINT DUM$;" 削除から除くファイル名(複数指定可)";DF$(28); 42700 X=5: M=3 :C=CL: GOSUB *ボックス 42750 X=9: M=66: GOSUB *ボックス 42800 RETURN 42850 *SW33 42900 X=39:Y=WY:M=36: GOSUB *ボックス_P 42950 IF Y_N_FLAG(33)=1 THEN CL=207 ELSE CL=202 43000 LOCATE 39,WY : PRINT "ログを入力ディレクトリ毎に凍結しながら実行"; 43050 C=CL:GOSUB *ボックス 43100 RETURN 43150 *SW43 43200 X=5:Y=WY:M=3: GOSUB *ボックス_P 43250 X=9:Y=WY:M=66: GOSUB *ボックス_P 43300 IF Y_N_FLAG(43)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 43350 LOCATE 5,WY : PRINT DUM$;" ファイルと会議室の対応ファイル(フルパスのファイル名)";DF$(43) 43400 X=5: M=3 :C=CL: GOSUB *ボックス 43450 X=9: M=66: GOSUB *ボックス 43500 RETURN 43550 *SW53 43600 X=5:Y=WY:M=3: GOSUB *ボックス_P 43650 X=9:Y=WY:M=66: GOSUB *ボックス_P 43700 IF Y_N_FLAG(53)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 43750 LOCATE 5,WY : PRINT DUM$;" データライブラリーをひとつのファイルにまとめる";DF$(53) 43800 X=5: M=3 :C=CL: GOSUB *ボックス 43850 X=9: M=66: GOSUB *ボックス 43900 RETURN 43950 *SW51 44000 X=5:Y=WY:M=3: GOSUB *ボックス_P 44050 X=9: M=66: GOSUB *ボックス_P 44100 IF Y_N_FLAG(51)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 44150 LOCATE 5,WY : PRINT DUM$;" 読み飛ばす入力ディレクトリ";DF$(51); 44200 X=5: M=3 :C=CL: GOSUB *ボックス 44250 X=9: M=66: GOSUB *ボックス 44300 RETURN 44350 *SW62 44400 X=5:Y=WY:M=3: GOSUB *ボックス_P 44450 X=9: M=66: GOSUB *ボックス_P 44500 IF Y_N_FLAG(62)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 44550 LOCATE 5,WY : PRINT DUM$;" インデックスのパス";DF$(62); 44600 X=5: M=3 :C=CL: GOSUB *ボックス 44650 X=9: M=66: GOSUB *ボックス 44700 RETURN 44750 *SW42 44800 X=5:Y=WY:M=3: GOSUB *ボックス_P 44850 X=9: M=66: GOSUB *ボックス_P 44900 IF Y_N_FLAG(42)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 44950 LOCATE 5,WY : PRINT DUM$;" データライブラリを別に整理";DF$(42); 45000 X=5: M=3 :C=CL: GOSUB *ボックス 45050 X=9: M=66: GOSUB *ボックス 45100 RETURN 45150 *SW45 45200 X=5:Y=WY:M=3: GOSUB *ボックス_P 45250 X=9: M=66: GOSUB *ボックス_P 45300 IF Y_N_FLAG(45)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 45350 LOCATE 5,WY : PRINT DUM$;" ID/ハンドル対応ファイルを作る";DF$(45); 45400 X=5: M=3 :C=CL: GOSUB *ボックス 45450 X=9: M=66: GOSUB *ボックス 45500 RETURN 45550 *SW44 45600 X=5:Y=WY:M=70: GOSUB *ボックス_P 45650 IF Y_N_FLAG(44)=1 THEN CL=207 ELSE CL=202 45700 LOCATE 6,WY : PRINT "CATLOG整理ファイルからインデックスを作る"; 45750 C=CL:GOSUB *ボックス 45800 RETURN 45850 *SW31 45900 X=5:Y=WY:M=34: GOSUB *ボックス_P 45950 IF Y_N_FLAG(31)=1 THEN CL=207 ELSE CL=202 46000 LOCATE 5,WY : PRINT " ログ表示しながら実行する"; 46050 C=CL:GOSUB *ボックス 46100 RETURN 46150 *SW47 46200 IF DF$(47)=":1" THEN CE=207 : CQ=202 ELSE CE=202 : CQ=207 46250 X=5:Y=WY:M=3: GOSUB *ボックス_P 46300 X=34: M=8 : GOSUB *ボックス_P 46350 X=44: M=8 : GOSUB *ボックス_P 46400 IF Y_N_FLAG(47)=1 THEN DUM$="ON ":CL=207 ELSE DUM$="OFF":CL=202 46450 LOCATE 5,WY : PRINT DUM$; 46500 COLOR 6 : PRINT " FAPXのログ保存モード"; 46550 COLOR 7 : PRINT " 圧縮なし 圧縮あり"; 46600 X=5: M=3 :C=CL: GOSUB *ボックス 46650 X=34: M=8 :C=CE:GOSUB *ボックス 46700 X=44: M=8 :C=CQ:GOSUB *ボックス 46750 RETURN 46800 *SW48 46850 X=5:Y=WY:M=34: GOSUB *ボックス_P 46900 IF Y_N_FLAG(48)=1 THEN CL=207 ELSE CL=202 46950 LOCATE 5,WY : PRINT " CATLOG整理ファイルを再度ソートし直す"; 47000 C=CL: GOSUB *ボックス 47050 RETURN 47100 *SW29 47150 X=39:Y=WY:M=36: GOSUB *ボックス_P 47200 IF Y_N_FLAG(29)=1 THEN CL=207 ELSE CL=202 47250 LOCATE X,WY : PRINT "削 除 発 言 は 整 理 に 含 め な い"; 47300 C=CL:GOSUB *ボックス 47350 RETURN 47400 '未サポート(DEFGENから使用する必要の無いスイッチを含む) 47450 *SW11 : '-Cancel-Answer-All-Sw 47500 *SW12 : '-Set-Time-Stamp-file 47550 *SW34 : '-Collect-1-ID:ABC01234 47600 *SW52 : '-Clear-Collect-ID 47650 *SW54 : '-CollectId:ABC01234 47700 *SW55 : '-f:CATLOGxx.DEF 47750 *SW56 : '-Do-from-stage-2 47800 *SW57 : '-Do-from-stage-3 47850 *SW58 : '-Do-only-stage-1 47900 *SW59 : '-Do-only-stage-2 47950 *SW60 : '-Do-only-stage-3 48000 *SW63 : '-BAT-Name-O:CTLG_NM.BAT 48050 RETURN 48100 *ボックス:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),OR,%C,BF : RETURN 48150 *ボックス_P:LINE (8*X-2,19*Y)-(8*X+8*M,19*Y+17),PSET,%200,BF : RETURN 48200 STOP 48250 *更新処理 48300 KILL DF_FILE$ 48350 OPEN DF_FILE$ FOR OUTPUT AS #1 48400 PRINT #1,";DEFGEN生成ファイル" 48450 IF DF_FILE$<>"..\CATLOG.DEF" THEN 48500 Y_N_FLAG(55)=0 : DF$(55)=":"+DF_FILE$ 48550 ELSE 48600 Y_N_FLAG(55)=0 48650 ENDIF 48700 FOR I=0 TO 100 48750 IF Y_N_FLAG(I)<>-1 THEN 48800 IF Y_N_FLAG(I)>0 THEN 48850 IF LEFT$(DF$(I),1)=":" THEN 48900 DUMMY$=TB$+CMD$(I)+DF$(I)+TB$+MES$(I) 48950 ELSE 49000 DUMMY$=TB$+CMD$(I)+TB$+MES$(I) 49050 ENDIF 49100 ELSE 49150 IF LEFT$(DF$(I),1)=":" THEN 49200 DUMMY$=";"+TB$+CMD$(I)+DF$(I)+TB$+MES$(I) 49250 ELSE 49300 DUMMY$=";"+TB$+CMD$(I)+TB$+MES$(I) 49350 ENDIF 49400 ENDIF 49450 PRINT #1,DUMMY$ 49500 ENDIF 49550 NEXT I 49600 CLOSE #1 49650 RETURN 49700 *中断処理 49750 IF DG_FLAG=0 THEN 49800 NAME DF_FILE0$ AS DF_FILE$ 49850 ENDIF 49900 RETURN 49950 *元DEFチェック 50000 FOR I=0 TO DF_MAX 50050 IF LEFT$(MOT$(I),1)="-" THEN 50100 YES_NO_FLAG=1 50150 P0=INSTR(MOT$(I),":") 50200 P1=INSTR(MOT$(I),";") 50250 IF P1<>0 AND P1<P0 THEN P0=0 50300 IF P0<>0 THEN 50350 C0$=LEFT$(MOT$(I),P0-1) 50400 IF P1=0 THEN 50450 C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1) 50500 C2$="" 50550 ELSE 50600 C1$=MID$(MOT$(I),P0,P1-P0) 50650 C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1) 50700 ENDIF 50750 ELSE 50800 C1$="yes" 50850 IF P1=0 THEN 50900 C0$=MOT$(I) 50950 C2$="" 51000 ELSE 51050 C0$=LEFT$(MOT$(I),P1-1) 51100 C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1) 51150 ENDIF 51200 ENDIF 51250 ELSE 51300 IF LEFT$(MOT$(I),1)=";" AND MID$(MOT$(I),2,1)="-" THEN 51350 YES_NO_FLAG=0 51400 MOT$(I)=RIGHT$(MOT$(I),LEN(MOT$(I))-1) 51450 P0=INSTR(MOT$(I),":") 51500 P1=INSTR(MOT$(I),";") 51550 IF P1<>0 AND P1<P0 THEN P0=0 51600 IF P0<>0 THEN 51650 C0$=LEFT$(MOT$(I),P0-1) 51700 IF P1=0 THEN 51750 C1$=RIGHT$(MOT$(I),LEN(MOT$(I))-P0+1) 51800 C2$="" 51850 ELSE 51900 C1$=MID$(MOT$(I),P0,P1-P0) 51950 C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1) 52000 ENDIF 52050 ELSE 52100 C1$="no" 52150 IF P1=0 THEN 52200 C0$=RIGHT$(MOT$(I),LEN(MOT$(I))-1) 52250 C2$="" 52300 ELSE 52350 C0$=LEFT$(MOT$(I),P1-1) 52400 C2$=RIGHT$(MOT$(I),LEN(MOT$(I))-P1+1) 52450 ENDIF 52500 ENDIF 52550 ENDIF 52600 ENDIF 52650 GOSUB *コマンド照合 52700 ' PRINT C0$,C1$,P0,P1 : PRINT CMD$(J),DF$(J),MES$(J):A$=INPUT$(1) 52750 NEXT I 52800 RETURN 52850 *コマンド照合 52900 J=0 52950 WHILE CMD$(J)<>C0$ 53000 J=J+1 53050 WEND 53100 'PRINT YES_NO_FLAG,Y_N_FLAG(J),C1$ : A$=INPUT$(1) 53150 ' IF YES_NO_FLAG=1 AND Y_N_FLAG(J)=0 AND DG_FLAG=-1 THEN 53200 DF$(J)=C1$ 53250 Y_N_FLAG(J)=YES_NO_FLAG 53300 ' ENDIF 53350 RETURN 53400 *スイッチ拡張対策 53450 J=0 53500 WHILE Y_N_FLAG(J)<>-1 53550 J=J+1 53600 WEND 53650 LOCATE 18,23 : PRINT 53700 LOCATE 18,23 : PRINT USING "###番目に@を追加します";J,C0$; 53750 CMD$(J)=C0$ : DF$(J)=C1$ : MES$(J)=C2$ : Y_N_FLAG(J)=0 53800 IF DG_FLAG THEN 53850 Y_N_FLAG(J)=YES_NO_FLAG 53900 ELSE 53950 Y_N_FLAG(J)=0 54000 ENDIF 54050 LOCATE 5,18: PRINT "最下行に『xxxx番目にxxxxxxxを追加します』の表示が現れた場合は" 54100 LOCATE 5,19: PRINT "サポートスイッチ以外のスイッチが元DEFにあった場合です。この場合でも元DEFに" 54150 LOCATE 5,20: PRINT "あったスイッチを新DEFにCOPYしますので、サポートするまではエディタで修正して" 54200 LOCATE 5,21: PRINT "という限定付きですが使用可能です。" 54250 RETURN 54300 *コマンドリストREAD 54350 I=0 54400 OPEN "DEFGEN_D.DAT" FOR INPUT AS #1 54450 WHILE NOT(EOF(1)) 54500 INPUT #1,DUMMY$ 54550 Y_N_FLAG(I)=VAL(DUMMY$) 54600 INPUT #1,CMD$(I),DF$(I),MES$(I) 54650 IF CMD$(I)="-I" THEN 54700 SWAP Y_N_FLAG(I),Y_N_FLAG(100):SWAP CMD$(I),CMD$(100) 54750 SWAP DF$(I),DF$(100) :SWAP MES$(I),MES$(100) 54800 ELSE 54850 I=I+1 54900 ENDIF 54950 WEND 55000 CML_MAX=I-1 55050 CLOSE #1 55100 RETURN 55150 *元DEFファイル読み込み 55200 LOCATE 18,22 : PRINT "元DEFファイルを読み込んでいます"; 55250 DG_FLAG=0 55300 OPEN DF_FILE$ FOR INPUT AS #1 55350 LINE INPUT #1,DUMMY$ 55400 IF DUMMY$=";DEFGEN生成ファイル" THEN 55450 DG_FLAG=-1 : I=0 55500 ELSE 55550 IF LEFT$(DUMMY$,1)="-" THEN 55600 MOT$(0)=DUMMY$ : I=1 55650 ELSE 55700 IF LEFT$(MOT$(I),1)=";" AND MID$(MOT$(I),2,1)="-" THEN 55750 MOT$(0)=DUMMY$ : I=1 55800 ELSE 55850 I=0 55900 ENDIF 55950 ENDIF 56000 ENDIF 56050 WHILE NOT(EOF(1)) 56100 LINE INPUT #1,DUMMY$ 56150 IF LEFT$(DUMMY$,1)="-" OR (LEFT$(DUMMY$,1)=";" AND MID$(DUMMY$,2,1)="-") THEN 56200 A=INSTR(DUMMY$,"-") 56250 IF MID$(DUMMY$,A+1,1)>="A" AND MID$(DUMMY$,A+1,1)<="Z" THEN 56300 MOT$(I)=DUMMY$ : I=I+1 56350 ' PRINT DUMMY$ : A$=INPUT$(1) 56400 ENDIF 56450 ENDIF 56500 WEND 56550 DF_MAX=I-1 56600 CLOSE #1 56650 IF DG_FLAG=0 THEN 56700 F_WORK=ASC("0") 56720 MID$(DF_FILE0$,LEN(DF_FILE0$),1)=CHR$(F_WORK) 56750 NAME DF_FILE$ AS DF_FILE0$ 56800 ' NAME DF_FILE0$ AS df_file$ 56850 ENDIF 56900 GOSUB *元DEFチェック 56950 RETURN 57000 *元DEFなし 57050 RETURN 57100 *強制サポートセット 57150 Y_N_FLAG(1)=1 57200 Y_N_FLAG(2)=1 57250 Y_N_FLAG(100)=1 57300 Y_N_FLAG(47)=0 57350 IF DG_FLAG=0 THEN 57400 Y_N_FLAG(11)=0 57450 Y_N_FLAG(12)=0 57500 Y_N_FLAG(34)=0 57550 Y_N_FLAG(52)=0 57600 Y_N_FLAG(54)=0 57650 Y_N_FLAG(55)=0 57700 Y_N_FLAG(56)=0 57750 Y_N_FLAG(57)=0 57800 Y_N_FLAG(58)=0 57850 Y_N_FLAG(59)=0 57900 Y_N_FLAG(60)=0 57950 ENDIF 58000 RETURN 58050 *開始画面設定 58100 CLS 58150 PLAY ON 58200 PLAY "@51T180C8DE2DC8.R16C8DEDC8D2" 58250 PLAY "@15" 58300 PAGE=1 58350 TRG(0)=8 : TRG(1)=44 : TRG(2)=53 : TRG(3)=43 : TRG(4)=46 : TRG(5)=45 58400 LOCATE 0,0 58450 PRINT " CATLOG小判鮫ソフト(^^;) DEF GENERATOR";VER$;" PED00201 JINX" 58500 LINE (0,0)-(639,19),OR,%201,BF 58550 LOCATE 0,2 58600 PRINT " このソフトは、飛雪さん作CATLOG.EXPの動作条件設定ファイルCATLOG.DEFを" 58650 PRINT " とりあえず使える状態にセットアップするものです。" 58700 PRINT " DEFGEN ";VER$;" は CATLOG ";VER_CL$;" のスイッチに対応しています。" 58750 PRINT 58800 PRINT " 選択肢の用意されている項目は、マウスで希望の側を左クリックしてください。" 58850 PRINT " ファイル名を指定する必要のある項目では入力域にマウスを移動し左クリック後、" 58900 PRINT " キーボードからドライブ名:ディレクトリ名を入力してください。" 58950 COLOR 5,,,4 59000 LOCATE 3, 9 : PRINT "☆★設定画面のルール(^^)/~" 59050 COLOR 7,,,0 : Y_WORK=10 59100 LOCATE 5,Y_WORK : PRINT "必須設定項目を示します。この設定抜きにはCATLOGは動きません。" 59150 X=5:Y=Y_WORK :M=70:C=205:GOSUB *ボックス 59200 LOCATE 5,Y_WORK+1 : PRINT "設定した方が望ましい項目を示します。" 59250 X=5:Y=Y_WORK+1:M=70:C=206:GOSUB *ボックス 59300 LOCATE 7,Y_WORK+2 : PRINT "OFFにした場合にはCATLOGの初期値(カレントディレクトリ等)になります" 59350 X=7:Y=Y_WORK+2 :M=56:C=206:GOSUB *ボックス 59400 LOCATE 5,Y_WORK+3 : PRINT "選択した時にこの色になります。" 59450 X=5:Y=Y_WORK+3 :M=70:C=207:GOSUB *ボックス 59500 LOCATE 5,Y_WORK+4 : PRINT "選択されてない場合の表示色です。" 59550 X=5:Y=Y_WORK+4 :M=70:C=202:GOSUB *ボックス 59600 LOCATE 5,Y_WORK+5 : PRINT "更新して終了 更新せずに終了 のいずれかを左クリックで終了します。" 59650 X=5:Y=Y_WORK+5 :M=12:C=203:GOSUB *ボックス 59700 X=18:Y=Y_WORK+5 :M=14:C=204:GOSUB *ボックス 59750 LOCATE 5,Y_WORK+6 : PRINT "また右クリックは 更新せずに終了 を左クリックと同じ動きとなります。" 59800 X=18:Y=Y_WORK+6:M=14:C=204:GOSUB *ボックス 59850 FOR I=0 TO 100 : Y_N_FLAG(I)=-1 : NEXT I 59900 RETURN 59950 *パレット設定 60000 OPEN "DEFGENPT.DAT" FOR INPUT AS #1 60050 I=200 60100 WHILE NOT(EOF(1)) 60150 LINE INPUT #1,DUMMY$ 60200 IF LEFT$(DUMMY$,1)<>";" THEN 60250 POI1=INSTR(DUMMY$,","):POI2=INSTR(POI1+1,DUMMY$,","):POI3=INSTR(POI2+1,DUMMY$,",") 60300 GREEN=VAL(LEFT$(DUMMY$,POI1-1)) 60350 RED=VAL(MID$(DUMMY$,POI1+1,POI2-POI1-1)) 60400 BLUE=VAL(MID$(DUMMY$,POI2+1,POI3-POI2-1)) 60450 PALETTE I,[GREEN,RED,BLUE] 60500 I=I+1 60550 ENDIF 60600 WEND 60650 CLOSE #1 60700 RETURN 60750 *QUICK_SORT 60800 FOR I=0 TO 100 60850 JUN(I)=I : CMD_W$(I)=CMD$(I) 60900 NEXT I 60950 N=100 61000 M=12 61050 DIM SL(M),SR(M) 61100 S=1 : SL(1)=0 : SR(1)=N 61150 L=SL(S) : R=SR(S) : S=S-1 61200 I=L : J=R : X$=CMD_W$(INT((L+R)/2)) 61250 IF CMD_W$(I)<X$ THEN I=I+1 : GOTO 61250 61300 IF X$<CMD_W$(J) THEN J=J-1 : GOTO 61300 61350 IF I<=J THEN SWAP CMD_W$(I),CMD_W$(J) : SWAP JUN(I),JUN(J) : I=I+1 : J=J-1 61400 IF I<=J THEN 61250 61450 IF I<R THEN S=S+1 : SL(S)=I : SR(S)=R 61500 R=J 61550 IF L<R THEN 61200 61600 IF S<>0 THEN 61150 61650 ERASE SL,SR 61700 ' FOR I=0 TO 100:PRINT CMD_W$(I):A$=INPUT$(1):NEXT I 61750 RETURN 61800 *設定不良 61850 COLOR 7,0,7,0 : CLS 61900 PRINT "DEFGENのプログラムのあるディレクトリに正しく設定してから再起動してください" 61950 PRINT : PRINT "プログラムは中断しました <何かキーを押して下さい>" 62000 A$=INPUT$(1) 62050 STOP 62100 *パラメタリード 62150 DEF FNARGC& = PEEK(PEEK(VARPTR(SYSTEM,6) - 8,4),4) 62200 DEF FNARGV& = PEEK(PEEK(VARPTR(SYSTEM,6) - 8,4) - 4,4) 62250 DIM ARGVS$(10) '読み出すパラメータの文字列 62300 ARGC& = FNARGC& 62350 IF ARGC& < 1 THEN PRINT "noting":END 62400 ARGV& = FNARGV& 62450 I=ARGC&-1 62500 ARGVX& = PEEK((ARGV&+I*4),4) 62550 ARGVS$(I) = "" 62600 M& = 1 62650 WHILE (M& <> 0) 62700 M& = PEEK((ARGVX&),1) 62750 ARGVS$(I) = ARGVS$(I)+CHR$(M&):ARGVX&=ARGVX&+1 62800 WEND 62850 IF LEFT$(ARGVS$(I),3)="-f:" THEN 62900 DF_FILE$=RIGHT$(ARGVS$(I),LEN(ARGVS$(I))-3) 62950 DF_FILE$=LEFT$(DF_FILE$,LEN(DF_FILE$)-1) 63000 A=INSTR(DF_FILE$,".") 63050 DF_FILE0$=LEFT$(DF_FILE$,A)+"DF0" 63100 ELSE 63150 DF_FILE$="..\CATLOG.DEF" 63200 DF_FILE0$="..\CATLOG.DF0" 63250 ENDIF 63300 COLOR 6 63350 LOCATE 7,Y_WORK+7: PRINT USING "※現在の編集対象は@です。";DF_FILE$; 63400 COLOR 7 63450 RETURN 63500 *エラーやで 63550 IF ERR=63 AND ERL=55300 THEN RESUME *元DEFなし 63600 IF ERR=63 AND ERL=48300 THEN RESUME NEXT 63650 IF ERR=63 AND ERL=49800 THEN RESUME NEXT 63700 IF ERR=9 AND ERL=52950 THEN RESUME *スイッチ拡張対策 63750 IF ERR=9 AND ERL=53050 THEN RESUME *スイッチ拡張対策 63800 IF ERR=54 AND ERL=28100 THEN RESUME 28650 63850 IF ERL=56750 THEN F_WORK=F_WORK+1 : RESUME 56720 63900 IF ERR=63 AND ERL=54400 THEN 63950 BEEP : CLS 64000 PRINT "DEFGEN_D.DAT(スイッチデータファイル)がありません。" 64050 RESUME *設定不良 64100 ENDIF 64150 IF ERR=63 AND ERL=60000 THEN 64200 BEEP : CLS 64250 PRINT "DEFGENPT.DAT(パレット設定ファイル)がありません。" 64300 RESUME *設定不良 64350 ENDIF 64400 PRINT USING "ERR=####### ERL=########";ERR,ERL 64450 STOP